#pragma once

#include "Referencer.h"
#include <iostream>
#include <vector>

using namespace std;

class Variable;

class Memory : public Referencer {
public:
	
	Memory();
	~Memory();
	void reset();
	
	void addVariable(Variable* newVar);
	Variable* getVariable(const string& name);
	
	void setDataHoldersToReferenced();
    
private:
	
	typedef vector<Variable*> Variables;
	Variables m_variables;
	
};